Thực đơn
Project_Euler Bài toán minh hoạ và lời giảiBài toán đầu tiên của Project Euler có nội dung như sau:
Các số tự nhiên nhỏ hơn 10 là bội số của 3 hoặc 5 là 3, 5, 6, 9. Tổng của chúng là 23.Tìm tổng tất cả các số tự nhiên chia hết cho 3 hoặc 5 nhỏ hơn 1000.
Mặc dù bài toán này khá đơn giản, có nhiều cách giải khác nhau.
Cách thứ nhất là liệt kê từng phần tử và kiểm tra xem nó có phải bội số của 3 hoặc 5 hay không.
Cách thứ hai sử dụng tính chất bao hàm - loại trừ. Gọi s u m k ( n ) {\displaystyle sum_{k}(n)} là tổng tất cả các số nhỏ hơn n và là bội số của k. Tổng các số nhỏ hơn n và là bội của 3 hoặc 5 thỏa mãn
s u m 3 or 5 ( n ) = s u m 3 ( n ) + s u m 5 ( n ) − s u m 15 ( n ) s u m k ( n ) = ∑ i = 1 ⌊ n − 1 k ⌋ k i ∑ i = 1 p k i = k p ( p + 1 ) 2 {\displaystyle {\begin{aligned}\mathrm {sum} _{\text{3 or 5}}(n)&=\mathrm {sum} _{3}(n)+\mathrm {sum} _{5}(n)-\mathrm {sum} _{15}(n)\\\mathrm {sum} _{k}(n)&=\sum _{i=1}^{\left\lfloor {\frac {n-1}{k}}\right\rfloor }ki\\\sum _{i=1}^{p}ki&=k{\frac {p(p+1)}{2}}\end{aligned}}}Đáp số là s u m 3 o r 5 ( 1000 ) {\displaystyle sum_{3or5}(1000)}
Thực đơn
Project_Euler Bài toán minh hoạ và lời giảiLiên quan
Project Sekai: Colorful Stage! feat. Hatsune Miku Project Reality Project Management Professional Projekt Revolution Project No.9 Projekt Melody Project Power: Dự án siêu năng lực Project I.G.I. Project Nobska Project EulerTài liệu tham khảo
WikiPedia: Project_Euler http://www.alexa.com/siteinfo/projecteuler.net http://projecteuler.net/ https://projecteuler.chat/viewtopic.php?f=12&t=263... https://www.wikidata.org/wiki/Q168430#P856